package h_eekwan.basic;

import java.util.Scanner;

import h_eekwan.module.P_Student;
import h_eekwan.service.P_StudentDAO;

public class P_StudentMain {
	private static P_StudentDAO srv = new  P_StudentDAO();
	private static Scanner sc = new Scanner(System.in);
	
	private static final String TITLE = " 반갑습니다. 학과관리 시스템입니다.";
	private static final String MENU = " <1> 학생추가	<2> 학생 전체조회	<3> 학생 상세조회	<4> 학생삭제	<5> 학생수정	<0> 프로그램종료 ";
	private static final String ADDMSG = " 학생추가 메뉴입니다. 이름, 나이, 주소, 학과, 학번 순으로 입력하여 주십시오.";
	private static final String REMMSG = " 학생삭제 메뉴입니다. 삭제하실 학생의 번호를 입력하여 주십시오.";
	private static final String MODMSG1 = " 학생수정 메뉴입니다. 수정하실 학생의 번호를 입력하여 주십시오. ";
	private static final String MODMSG2 = " 새로운 값, 이름, 나이, 주소, 학과, 학번 순으로 입력하여 주십시오. ";
	
	public static void main(String[] args) {
	
		while(true){
			System.out.println(TITLE);
			System.out.println(MENU);
			
			switch(sc.nextInt()){
			case 1 : addStudent(sc, srv);			break;
			case 2 : readStudent(srv);				break;
			case 3 : readOneStudent(srv);		break;
			case 4 : removeStudent(sc, srv);		break;
			case 5 : modifyStudent(sc, srv);		break;
			case 0 : sc.close();
					System.out.println(" 		: : : 이용해 주셔서 대단히 감사합니다. 오늘 하루도 행운 가득하세요 (^0^)");
					System.exit(0);		
			break;
			
			}
		}
	}	// main

	private static void addStudent(Scanner sc, P_StudentDAO srv) {
		System.out.println( ADDMSG );
		P_Student svo = new P_Student(sc.next(), sc.next(), sc.next(), sc.next(), sc.next());
		srv.insertStudent(svo);
		System.out.println(": : 학생추가가 성공적으로 이루어졌습니다. ^^ " + "\n");
		
	}

	private static void readStudent(P_StudentDAO srv) {
	System.out.println(srv.selectStudent());
	System.out.println( ": : 학생 전체조회가 성공적으로 이루어졌습니다. ^^ " + "\n");
		
	}

	private static void readOneStudent(P_StudentDAO srv) {
		System.out.println(" : : 상세조회 하고 싶은 학생의 번호를 입력하여 주시겠습니까? ");
		String no = sc.next();
		System.out.println(srv.selectStudent(no));
		
		System.out.println( ": : 학생 상세조회가 성공적으로 이루어졌습니다. ^^ " + "\n");

		
	}

	private static void removeStudent(Scanner sc, P_StudentDAO srv) {
		System.out.println(REMMSG);
		String no = sc.next();
		srv.deleteStudent(no);
		System.out.println( ": : 학생삭제가 성공적으로 이루어졌습니다. ^^ " + "\n");
		
	}

	private static void modifyStudent(Scanner sc, P_StudentDAO srv) {
		System.out.println(MODMSG1);
		String no = sc.next();
		System.out.println(MODMSG2);
		P_Student svo = new P_Student(sc.next(), sc.next(), sc.next(), sc.next(), sc.next());
		svo.setNo(no);
		srv.updateSudent(svo);
		System.out.println( ": : 학생수정이 성공적으로 이루어졌습니다. ^^ " + "\n");
		
	}
	
	
}	//class
